package top.huhuiyu.p2;

public class Box {
    private int length;
    private int width;
    private int height;

    private String owner = "无名氏";

    public String getOwner() {
        return owner;
    }

    // 设置器为set开头+属性名的首字母改大写
    public void setOwner(String o) {
        owner = o;
    }

    // 和类同名的没有返回值定义的方法叫做构造方法
    // 作用是构造对象的时候必须要使用该方法

    public Box(int l, int w, int h) {
        // if(逻辑判断表达式) { 逻辑判断为真时执行的代码 }
        // else { 逻辑判断为假时执行的代码 }
        if (l > 0) {
            // 如果l的值大于0,
            // 则将l的值赋给length属性
            length = l;
        } else {
            // 否则length的值保持为10
            length = 10;
        }

        if (w > 0) {
            width = w;
        } else {
            width = 10;
        }

        if (h > 0) {
            height = h;
        } else {
            height = 10;
        }

    }

    public Box() {
        length = 10;
        width = 10;
        height = 10;
    }

    // 没有字段的属性，一般都是由其它属性计算后的结果
    // 获取盒子的体积值
    public int getVolume() {
        return length * width * height;
    }

    // getter方法（获取器）的特征get开头加上属性首字母变大写
    public int getLength() {
        return length;
    }

    public int getWidth() {
        return width;
    }

    public int getHeight() {
        return height;
    }

    public String info() {
        return String.format("%s盒子的长宽高：%s,%s,%s", owner, length, width, height);
    }
}
